n=int(input())
a=list(map(int,input().split()))
a1,a2,a3=[],[],[]
for i in a:
if i<0:a1.append(i)
elif i>0:a2.append(i)
else:a3.append(i)
if not len(a1)&1:
a3.append(a1.pop())
if len(a2)==0:
a2.append(a1.pop())
a2.append(a1.pop())
print(len(a1),*a1)
print(len(a2),*a2)
print(len(a3),*a3)
1409A - Yet Another Two Integers Problem | 977A - Wrong Subtraction |
263A - Beautiful Matrix | 180C - Letter |
151A - Soft Drinking | 1352A - Sum of Round Numbers |
281A - Word Capitalization | 1646A - Square Counting |
266A - Stones on the Table | 61A - Ultra-Fast Mathematician |
148A - Insomnia cure | 1650A - Deletions of Two Adjacent Letters |
1512A - Spy Detected | 282A - Bit++ |
69A - Young Physicist | 1651A - Playoff |
734A - Anton and Danik | 1300B - Assigning to Classes |
1647A - Madoka and Math Dad | 710A - King Moves |
1131A - Sea Battle | 118A - String Task |
236A - Boy or Girl | 271A - Beautiful Year |
520B - Two Buttons | 231A - Team |
479C - Exams | 1030A - In Search of an Easy Problem |
158A - Next Round | 71A - Way Too Long Words |